/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Modelo;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.util.ArrayList;

/**
 *
 * @author Edward
 */
public class AccesoDatosCompetencias {
    Connection conexion;
    ResultSet consulta;
    ArrayList<Competencia> competencias=new ArrayList<Competencia>();

    public void conectar() {
        try {
            Class.forName("org.postgresql.Driver");
            conexion = DriverManager.getConnection("jdbc:postgresql://127.0.0.1:5432/sistemaEvaluaciones", "postgres", "admin");
            System.out.println("Se conecto a la base de datos");
        } catch (Exception e) {
            System.out.println("No se pudo conectar a la base de datos " + e);
        }
    }

    public void desconectar() {
        try {
            consulta.close();
            conexion.close();
            System.out.println("Se desconecto correctamente de la base de datos");
        } catch (Exception e) {
            System.out.println("No se pudo desconectar de la base de datos " + e);
        }
    }

    public int insertarCompetencia(int id, String descripcion) {
        try {
            conectar();
            String sql = "insert into tbl_competencias values('" + id + "','" + descripcion + "')";
            int s = conexion.createStatement().executeUpdate(sql);
            desconectar();
            return 1;
        } catch (Exception e) {
            System.out.println("Insertada con exito");
        }
        return -1;
    }

    public ArrayList<Competencia> consultarCompetencias() {
        try {
            conectar();
            consulta = conexion.createStatement().executeQuery("select * from tbl_competencias");
            while (consulta.next()) {
                // cadena += consulta.getObject(consulta.getMetaData().getColumnLabel(1)).toString() + "," + consulta.getObject(consulta.getMetaData().getColumnLabel(2)).toString() + ",";
                Competencia competencia = new Competencia(consulta.getObject(consulta.getMetaData().getColumnLabel(1)).toString(), consulta.getObject(consulta.getMetaData().getColumnLabel(2)).toString());
                competencias.add(competencia);
            }
            desconectar();
        } catch (Exception e) {
            System.out.println("Error al intentar consultar preguntas para una evaluacion: " + e);
        }
        return competencias;
    }
}
